A Domain-Specific Language for Regular Sets of Strings and Trees
نویسندگان
چکیده
We propose a new high-level programming notation, called FIDO, that we have designed to concisely express regular sets of strings or trees. In particular, it can be viewed as a domain-speci c language for the expression of nite-state automata on large alphabets (of sometimes astronomical size). FIDO is based on a combination of mathematical logic and programming language concepts. This combination shares no similarities with usual logic programming languages. FIDO compiles into nitestate string or tree automata, so there is no concept of run-time. It has already been applied to a variety of problems of considerable complexity and practical interest. In the present paper, we motivate the need for a language like FIDO, and discuss our design and its implementation. We show how recursive data types, uni cation, implicit coercions, and subtyping can be merged with a variation of predicate logic, called the Monadic Second-order Logic (M2L) on trees. FIDO is translated rst into pure M2L via suitable encodings, and nally into nite-state automata through the MONA tool.
منابع مشابه
A Domain-speciic Language for Regular Sets of Strings and Trees
We propose a new high-level programming notation, called FIDO, that we have designed to concisely express regular sets of strings or trees. In particular, it can be viewed as a domain-speciic language for the expression of nite-state automata on large alphabets (of sometimes astronomical size). FIDO is based on a combination of mathematical logic and programming language concepts. This combinat...
متن کاملA Domain - Speci c Language forRegular Sets of Strings and TreesNils
We propose a new high-level programming notation, called FIDO, that we have designed to concisely express regular sets of strings or trees. In particular, it can be viewed as a domain-speciic language for the expression of nite-state automata on large alphabets (of sometimes astronomical size). FIDO is based on a combination of mathematical logic and programming language concepts. This combinat...
متن کاملChapter 3 Applications of Modal Logic in Model Theoretic Syntax 1
Since extending the logic of strings to capture more complex string languages than the regular languages often leads to undecidability (see e.g. Lautemann et al. (1995)), one approach to extending the coverage of logic is to describe more complex structures: move from strings to trees. Thus, the Kripke structures we will be considering are trees, and the logics will contain more complicated mod...
متن کاملtrx: Regular-tree expressions, now in Scheme
Regular-tree expressions are to semi-structured data, such as XML and Lisp s-expressions, what standard regular expressions are to strings: a powerful “chainsaw” for describing, searching and transforming structure in large data sets. We have designed and implemented a little language, trx, for defining regular-tree patterns. We discuss the design of trx, its underlying mathematical formalisati...
متن کاملA Note on the Complexity of Optimality Systems
Optimality Theory (OT) has a growing importance in various disciplines of linguistics. The way in which correct linguistic expressions are generated according to OT can be captured formally in an Optimality System (OS). An OS de nes a relation between an input and an output using a binary relation, called gen, on the domain, and a set of constraints. Frank and Satta ([1]) have shown that an OS ...
متن کاملذخیره در منابع من
با ذخیره ی این منبع در منابع من، دسترسی به آن را برای استفاده های بعدی آسان تر کنید
عنوان ژورنال:
- IEEE Trans. Software Eng.
دوره 25 شماره
صفحات -
تاریخ انتشار 1997